package com.ruoyi.statisticalCenter.domain;

import java.math.BigDecimal;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 客户账单核销对象 sc_customer_bad_debt
 * 
 * @author pyx
 * @date 2024-03-01
 */
public class ScCustomerBadDebt extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /**  */
    private Integer id;

    /** 客户名称 */
    @Excel(name = "客户名称")
    private String customerName;

    /** 客户性质 */
    @Excel(name = "客户性质")
    private String customerType;

    /** 金额 */
    @Excel(name = "金额")
    private BigDecimal amount;

    /** 应收金额 */
    @Excel(name = "应收金额")
    private BigDecimal amountReceivable;

    /** 实收金额 */
    @Excel(name = "实收金额")
    private BigDecimal amountReceived;

    /** 票数 */
    @Excel(name = "票数")
    private Integer vote;

    /** 收款日期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "收款日期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date collectionDate;

    /** 所属月份 */
    @Excel(name = "所属月份")
    private String reportingPeriod;

    /** 差额处理 */
    @Excel(name = "差额处理")
    private String balanceTreatment;

    public void setId(Integer id)
    {
        this.id = id;
    }

    public Integer getId()
    {
        return id;
    }
    public void setCustomerName(String customerName) 
    {
        this.customerName = customerName;
    }

    public String getCustomerName() 
    {
        return customerName;
    }
    public void setCustomerType(String customerType) 
    {
        this.customerType = customerType;
    }

    public String getCustomerType() 
    {
        return customerType;
    }
    public void setAmount(BigDecimal amount) 
    {
        this.amount = amount;
    }

    public BigDecimal getAmount() 
    {
        return amount;
    }
    public void setAmountReceivable(BigDecimal amountReceivable) 
    {
        this.amountReceivable = amountReceivable;
    }

    public BigDecimal getAmountReceivable() 
    {
        return amountReceivable;
    }
    public void setAmountReceived(BigDecimal amountReceived) 
    {
        this.amountReceived = amountReceived;
    }

    public BigDecimal getAmountReceived() 
    {
        return amountReceived;
    }
    public void setVote(Integer vote)
    {
        this.vote = vote;
    }

    public Integer getVote()
    {
        return vote;
    }
    public void setCollectionDate(Date collectionDate) 
    {
        this.collectionDate = collectionDate;
    }

    public Date getCollectionDate() 
    {
        return collectionDate;
    }
    public void setReportingPeriod(String reportingPeriod) 
    {
        this.reportingPeriod = reportingPeriod;
    }

    public String getReportingPeriod() 
    {
        return reportingPeriod;
    }
    public void setBalanceTreatment(String balanceTreatment) 
    {
        this.balanceTreatment = balanceTreatment;
    }

    public String getBalanceTreatment() 
    {
        return balanceTreatment;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("customerName", getCustomerName())
            .append("customerType", getCustomerType())
            .append("amount", getAmount())
            .append("amountReceivable", getAmountReceivable())
            .append("amountReceived", getAmountReceived())
            .append("vote", getVote())
            .append("collectionDate", getCollectionDate())
            .append("reportingPeriod", getReportingPeriod())
            .append("balanceTreatment", getBalanceTreatment())
            .toString();
    }
}
